package com.smforj.ssm.frame.core.listener;

import javax.servlet.ServletContext;

import org.apache.log4j.Logger;
import org.springframework.web.context.WebApplicationContext;

import com.smforj.ssm.modules.sys.util.Sip2Server;
import com.smforj.ssm.util.PropKit;
/****
 * WebContextListener
 * 
 * 
 * @author Aaron Gao
 * @2018 2018年6月4日
 * 
 *
 */
public class WebContextListener extends org.springframework.web.context.ContextLoaderListener {
	private static final Logger logger = Logger.getLogger("WebContextListener");
	
	@Override
	public WebApplicationContext initWebApplicationContext(ServletContext servletContext) {
		if(logger.isDebugEnabled())
			logger.debug("WebContextListener initWebApplicationContext..."); 
		if (!printKeyLoadMessage()){
			return null;
		} 
		WebApplicationContext context = super.initWebApplicationContext(servletContext); 
		//StartServer();
		return context;
	}
	
	/**
	 * 获取Key加载信息
	 */
	public static boolean printKeyLoadMessage(){
        PropKit.use("smforj.properties"); 
		StringBuilder sb = new StringBuilder();
		sb.append("\r\n======================================================================\r\n");
		sb.append("\r\n    欢迎使用 "+PropKit.get("productname")+"  - Powered By Abraham \r\n");
		sb.append("\r\n======================================================================\r\n");
		System.out.println(sb.toString());
		return true;
	}
	/***
	 * 启动Sip2 Server
	 * 
	 * @date 2018年4月26日 下午1:55:17
	 */
	private void StartServer()
	{
	       //启动本地Socket服务器
        Sip2Server server = new Sip2Server();
        server.startServer(PropKit.get("sip2ip"), Integer.parseInt(PropKit.get("sip2port"))); 
        if(logger.isDebugEnabled())
        	logger.debug("启动本地Socket服务器=============================end"); 
	}
}
